import { CheckAns } from "./CheckAns";

namespace LeetCode0992SubarraysWithKDistinct {

    // 時間開銷太大，廢棄
    function subarraysWithKDistinct_abandon(A: number[], K: number): number {
        if (!K || !A || A.length == 0)
            return 0;
        const len = A.length;
        let cnt = 0;
        // 没啥思路，先死算，再优化吧(时间预期O((n-k)^2))
        for (let i = 0; i <= len - K; i++) {
            for (let j = K; j <= len; j++) {
                // 截取子串[i,j)測試是否符合要求
                const numCnt: number = (new Set(A.slice(i, j))).size;
                if (numCnt == K) {
                    // 符合預期，記録
                    cnt++;
                }
                else if (numCnt > K) {
                    // 超過預期設置，退出本次循環
                    break;
                }
            }
        }
        return cnt;
    };

    // 減少遍歷次數
    function subarraysWithKDistinct(A: number[], K: number): number {
        if (!K || !A || A.length == 0)
            return 0;
        const len = A.length;
        // 統計最多K的所有子數組
        let mapKMost: Map<number, number> = new Map();
        // 統計最多(k-1)的所有子數組
        let mapLessK: Map<number, number> = new Map();
        let leftKMost: number = 0;
        let leftLessK: number = 0;
        let right: number = 0;
        let ans: number = 0;
        while (right < len) {
            // add to both map
            const numR: number = A[right];
            mapKMost.set(numR, (mapKMost.get(numR) || 0) + 1);
            mapLessK.set(numR, (mapLessK.get(numR) || 0) + 1);
            // deal if size is above the limit k
            while (mapKMost.size > K) {
                const num: number = A[leftKMost];
                const cnt: number = mapKMost.get(num) || 0;
                if (cnt <= 1)
                    mapKMost.delete(num);
                else
                    mapKMost.set(num, cnt - 1);
                leftKMost++;
            }
            // deal if size is above the limit k-1
            while (mapLessK.size > K - 1) {
                const num: number = A[leftLessK];
                const cnt: number = mapLessK.get(num) || 0;
                if (cnt <= 1)
                    mapLessK.delete(num);
                else
                    mapLessK.set(num, cnt - 1);
                leftLessK++;
            }
            // (right-leftKMost+1)+(right-leftLessK+1) => leftLessK - leftKMost
            ans += leftLessK - leftKMost;
            // right pointer add
            right++;
        }
        return ans;
    }

    // test
    const testData: { A: number[], K: number, ans: number }[] = [
        { A: [1, 2, 1, 2, 3], K: 2, ans: 7 },
        { A: [1, 2, 1, 3, 4], K: 3, ans: 3 },
        { A: [2, 2, 3, 3, 3, 1, 3], K: 2, ans: 13 },
        { A: [2, 1, 1, 1, 2], K: 1, ans: 8 },
        { K: 360, ans: 10013, A: [2690, 798, 5800, 94, 2066, 8611, 5951, 4576, 5884, 6357, 3937, 2533, 3518, 3237, 1959, 6006, 1851, 6262, 7148, 8002, 8939, 5855, 6370, 8250, 1766, 6669, 8733, 4627, 6333, 558, 7446, 3415, 9345, 7094, 6585, 5556, 7562, 9374, 2503, 9499, 4497, 176, 6037, 3330, 7846, 8605, 9947, 5395, 7195, 23, 8055, 2315, 6214, 5431, 4695, 2124, 5555, 7224, 7906, 5323, 8848, 810, 880, 1746, 192, 1504, 685, 2895, 297, 6978, 8874, 8452, 8293, 828, 2780, 3541, 9221, 9357, 7195, 4381, 6121, 4425, 7220, 4025, 8009, 6168, 9752, 8955, 5567, 6484, 5451, 7736, 1211, 6687, 870, 3979, 8830, 1627, 2581, 6288, 3327, 9216, 377, 281, 6729, 7113, 3735, 941, 8891, 423, 8087, 4804, 4566, 6653, 8454, 2876, 7651, 2386, 7668, 7095, 8443, 1874, 6295, 8955, 5692, 8989, 5190, 1744, 3323, 6615, 1407, 6789, 605, 7558, 4338, 3372, 7452, 279, 2580, 170, 9608, 3066, 2173, 2120, 9651, 9745, 650, 2644, 7476, 197, 4315, 6977, 565, 5393, 6310, 6034, 5909, 9653, 6163, 3363, 4455, 7316, 8525, 5696, 4353, 1526, 5111, 5596, 878, 7223, 4501, 7340, 6205, 9398, 8015, 8185, 1631, 2023, 2690, 482, 5693, 7458, 3438, 1079, 5151, 5617, 2441, 6463, 7302, 6630, 7930, 867, 9635, 6419, 2751, 449, 8621, 9503, 8839, 8522, 5408, 3048, 7049, 4196, 8425, 412, 5932, 5912, 299, 4686, 1036, 8821, 9036, 2632, 7452, 635, 872, 4243, 9166, 3729, 1501, 4080, 3964, 9840, 8942, 7858, 3651, 6422, 3457, 4258, 819, 2276, 49, 794, 9216, 1568, 8844, 6218, 5140, 4420, 1333, 1015, 3211, 9917, 3635, 6823, 1861, 1757, 337, 9798, 3703, 3529, 9452, 7155, 650, 8683, 3144, 3651, 779, 3057, 1915, 3806, 7386, 6460, 81, 173, 5883, 7139, 7814, 8610, 5495, 3357, 5327, 1632, 9772, 5946, 2865, 4447, 857, 5851, 7320, 9642, 8883, 1702, 3410, 3376, 4435, 3651, 8994, 6086, 4326, 6785, 7149, 6355, 1435, 8049, 1392, 7618, 1673, 9210, 2120, 564, 9574, 8388, 7992, 651, 2465, 9693, 167, 4817, 8825, 4215, 4895, 3071, 9091, 2663, 4175, 182, 6968, 8584, 1514, 7561, 8468, 3430, 9862, 9057, 4793, 2628, 5662, 8472, 362, 6294, 4833, 3854, 5952, 4232, 2368, 9368, 4632, 4693, 4132, 3003, 2371, 5120, 8949, 2997, 9973, 8223, 8580, 5813, 711, 6778, 8002, 9902, 8454, 5281, 9015, 584, 7441, 1444, 2604, 623, 3646, 3528, 8129, 5810, 7845, 5481, 1512, 5749, 1748, 9122, 5448, 2431, 2969, 3734, 5707, 173, 5131, 8923, 704, 1261, 6018, 8762, 521, 6964, 8874, 5441, 3246, 6313, 2661, 1872, 73, 3095, 742, 2319, 8056, 6703, 2550, 935, 6735, 3444, 5394, 6404, 9075, 9197, 395, 5658, 47, 5094, 2501, 5757, 4691, 2591, 9400, 1383, 4032, 8876, 7714, 2534, 2045, 3107, 7012, 7387, 1525, 449, 2800, 6172, 2679, 8069, 2, 1106, 7381, 932, 484, 7148, 6533, 1347, 5335, 2299, 2003, 528, 5297, 228, 7117, 3066, 3082, 4033, 5557, 7412, 3742, 8224, 9011, 7574, 4990, 258, 241, 348, 4702, 6861, 717, 5029, 393, 3275, 3322, 6837, 9049, 6697, 7599, 1091, 1247, 4873, 6918, 9036, 2273, 2896, 2990, 3918, 6054, 4296, 8618, 1790, 7788, 3359, 4976, 5347, 4211, 9815, 6699, 2600, 7792, 4260, 6506, 350, 3611, 6401, 2911, 4935, 6705, 1051, 7664, 6060, 8386, 3108, 4297, 1225, 1012, 9441, 4935, 1708, 2894, 733, 8399, 3449, 9934, 4052, 2293, 1992, 6500, 6457, 1429, 1429, 8100, 6240, 7614, 5488, 3688, 4724, 2834, 75, 4348, 194, 712, 8607, 2096, 3901, 2890, 3207, 5002, 2120, 6151, 8578, 9457, 9519, 8002, 5269, 3427, 3982, 4353, 3431, 2992, 2392, 9967, 5508, 6172, 8001, 8666, 5515, 8433, 4645, 3861, 5568, 9291, 6751, 8376, 4826, 538, 2786, 4651, 1430, 531, 9412, 6031, 242, 5424, 6366, 4645, 7251, 9099, 9597, 1172, 3680, 4887, 7076, 8759, 6500, 8855, 8808, 1325, 7680, 4085, 2866, 9512, 7958, 6749, 9121, 8782, 9471, 9279, 8613, 4027, 1654, 2992, 5781, 189, 651, 8713, 2970, 2455, 3490, 5431, 2882, 9790, 4657, 9161, 318, 2655, 3093, 7990, 9236, 1687, 6253, 6500, 7645, 5817, 2829, 4146, 5752, 9868, 2061, 703, 8998, 5642, 2248, 2656, 5180, 2243, 6494, 5390, 5732, 8200, 2114, 2357, 9212, 2352, 9660, 4263, 1157, 9766, 8407, 9431, 389, 9528, 2788, 9391, 7158, 2618, 9270, 6730, 2789, 3169, 5797, 9738, 9523, 1129, 8107, 8867, 1415, 9184, 9385, 6846, 6747, 88, 9907, 8967, 4363, 1433, 4080, 7360, 1721, 8476, 6507, 6668, 4603, 9281, 613, 8420, 8091, 3242, 8720, 9926, 9782, 9886, 5349, 4033, 3054, 2375, 4943, 3450, 6456, 4564, 4222, 8841, 4751, 6280, 1894, 5501, 7023, 8873, 1885, 3764, 9274, 2802, 9728, 452, 2167, 1233, 9358, 2725, 990, 5497, 9339, 1365, 8461, 9218, 6783, 1090, 5078, 3700, 981, 9171, 1535, 5168, 9820, 1840, 1184, 9559, 9817, 2581, 3864, 9824, 3299, 8979, 1897, 1750, 5030, 2751, 1944, 3928, 2097, 9122, 8910, 8824, 8056, 6263, 9081, 701, 2178, 2831, 4699, 3440, 5644, 5904, 4570, 8434, 8404, 6210, 6463, 3077, 3278, 2337, 5479, 8655, 7459, 6686, 3989, 5290, 8797, 8750, 1006, 6246, 7341, 9337, 2555, 3190, 2021, 8588, 1403, 1263, 4350, 9288, 7102, 620, 500, 6064, 1627, 3676, 228, 3583, 8827, 2930, 1941, 3664, 2203, 7413, 1900, 9124, 1198, 9998, 1766, 6272, 3977, 8236, 194, 7404, 9414, 2675, 6676, 4213, 4753, 8712, 2484, 5803, 6478, 2023, 2477, 5428, 1153, 4158, 9374, 3735, 2020, 7743, 3340, 1506, 3636, 5842, 8654, 4869, 9093, 496, 8224, 4469, 4762, 2473, 5489, 1962, 2189, 783, 3349, 385, 45, 2777, 8947, 3146, 9371, 9345, 9079, 5387, 6300, 4854, 8961, 6683, 6634, 1611, 5845, 4488, 4259, 8422, 1370, 9682, 5736, 3682, 6283, 2237, 127, 3869, 761, 3843, 1810, 715, 9542, 4480, 8398, 5825, 6747, 8692, 261, 9962, 2323, 5460, 1964, 3398, 6878, 3418, 4910, 6294, 3295, 8192, 3159, 1634, 4878, 7049, 5577, 9155, 8903, 8313, 9083, 7577, 2970, 1847, 2948, 6421, 9593, 1522, 4437, 8016, 7628, 3897, 9949, 2819, 2672, 6850, 7970, 61, 1332, 8628, 1439, 177, 6522, 2300, 7680, 8740, 6956, 332, 4215, 2435, 2325, 5304, 2891, 3195, 7220, 1031, 596, 9567, 4349, 3144, 2832, 6615, 1223, 698, 3249, 1547, 1310, 3106, 7373, 4459, 5442, 5529, 4397, 1082, 6455, 7724, 2958, 7678, 9844, 2970, 2115, 2739, 7988, 8106, 4224, 2885, 7319, 2354, 1073, 8073, 8898, 7057, 7617, 6612, 8219, 662, 9875, 8802, 9518, 2934, 3117, 705, 2843, 9610, 9704, 4883, 565, 318, 898, 4832, 5348, 4324, 5115, 9665, 9940, 7567, 7515, 8742, 7556, 1048, 4747, 2897, 4360, 4733, 7959, 2937, 8488, 4429, 9091, 1224, 2111, 8253, 6819, 2446, 3020, 8678, 5153, 1083, 4420, 8340, 4778, 7976, 9918, 1176, 2657, 6975, 1557, 1303, 1163, 4767, 7786, 1050, 2514, 6233, 688, 6476, 7571, 8453, 4446, 7695, 3903, 7870, 7152, 1239, 5325, 6466, 6583, 3821, 1654, 563, 5892, 9597, 1544, 9448, 9809, 552, 5941, 1629, 6808, 3363, 3633, 9982, 9177, 9239, 2374, 3072, 8377, 3503, 7427, 4617, 9278, 9628, 9561, 4035, 4452, 3668, 7549, 3181, 9595, 191, 9338, 2169, 4086, 9529, 9724, 4159, 4493, 851, 2965, 8473, 2572, 3602, 9899, 3701, 9378, 8591, 424, 8407, 1475, 1061, 2265, 5604, 4951, 5285, 2560, 6247, 5496, 117, 8274, 4783, 6056, 4669, 8186, 5791, 8345, 1929, 4756, 2702, 9858, 1642, 6771, 2165, 7281, 8133, 7627, 4003, 2788, 3986, 7511, 8860, 7198, 2318, 6100, 678, 6825, 697, 2436, 746, 8478, 8313, 8013, 8089, 686, 2518, 3800, 2405, 8445, 748, 1026, 4563, 8017, 4460, 7422, 5296, 6535, 5626, 6656, 8601, 6207, 10000, 4499, 6561, 5771, 1690, 245, 1215, 2596, 4825, 1926, 7725, 8181, 3616, 7565, 3706, 2174, 5930, 658, 4777, 8690, 9122, 5781, 7776, 2217, 3064, 9510, 5546, 8303, 4995, 4698, 7973, 2259, 9642, 9501, 309, 9961, 7450, 8906, 1919, 6137, 9859, 7621, 4895, 3773, 8635, 1986, 6914, 7607, 5209, 4043, 6237, 1816, 8267, 9613, 6804, 9002, 1073, 5019, 611, 5240, 1247, 2714, 9545, 7697, 7055, 9572, 8056, 5000, 1069, 5669, 6711, 9734, 6601, 7473, 2592, 6455, 4392, 7516, 7714, 3657, 4948, 9856, 6032, 848, 775, 9483, 7263, 8069, 9572, 6702, 4476, 2098, 6174, 9039, 5892, 3239, 7151, 56, 8907, 5609, 9747, 3989, 3910, 8846, 6458, 1930, 6592, 1649, 953, 1835, 7321, 2692, 681, 6178, 7762, 7945, 3079, 2397, 2114, 5833, 1315, 4398, 4052, 5549, 2273, 1609, 9399, 9767, 7963, 4697, 8797, 2874, 4892, 9579, 4364, 8702, 3382, 9633, 7904, 3069, 3261, 4576, 4759, 9161, 411, 3730, 7779, 916, 5178, 3765, 5228, 9541, 8797, 9019, 3467, 4650, 9031, 648, 4160, 7185, 3585, 5207, 6222, 7581, 921, 1381, 6442, 8599, 5934, 1028, 5631, 8091, 6005, 1834, 9372, 375, 1319, 9919, 8020, 8623, 4368, 9235, 5357, 6460, 9202, 3509, 5922, 7336, 4336, 3933, 2209, 1987, 9187, 2115, 4718, 9969, 569, 4949, 3262, 4650, 6721, 7653, 349, 3625, 2512, 4425, 4921, 1998, 2031, 2330, 5140, 5532, 9786, 1381, 2069, 3723, 8082, 5981, 3320, 3127, 9100, 2535, 1306, 3247, 7777, 476, 8125, 8135, 252, 650, 7354, 6166, 2895, 4740, 6506, 8329, 8190, 1022, 8780, 2702, 5761, 5681, 1379, 5162, 2823, 925, 853, 7044, 5054, 9778, 4109, 359, 5612, 8438, 9849, 7540, 7849, 4594, 7196, 7070, 6642, 7669, 7149, 7004, 2296, 159, 855, 9770, 1391, 103, 2999, 7000, 3855, 9446, 4865, 8617, 5911, 5514, 5756, 3062, 1189, 2756, 9233, 1257, 2623, 4138, 5440, 802, 5373, 7014, 4522, 8998, 1436, 3892, 360, 7130, 6044, 7912, 6675, 7772, 4195, 438, 442, 5659, 5081, 6904, 127, 2154, 7482, 8044, 6170, 6241, 4231, 8387, 5700, 8700, 7445, 1684, 9309, 3882, 9612, 214, 9704, 8015, 6233, 8761, 1338, 5122, 7436, 1710, 4990, 8400, 4571, 1114, 1075, 87, 2205, 5784, 9820, 8364, 7296, 1716, 5759, 7494, 260, 7376, 6647, 7968, 1486, 2738, 3731, 1739, 6646, 8388, 9908, 6873, 2921, 2147, 6419, 4147, 6919, 3697, 9800, 2516, 4534, 9364, 3572, 9964, 4749, 7268, 7736, 6223, 7562, 3297, 1468, 4387, 6397, 3162, 7017, 341, 5387, 1607, 431, 5973, 2571, 1200, 1312, 8293, 8476, 3075, 2035, 4766, 654, 6066, 2594, 2954, 5332, 5923, 2060, 8123, 1416, 78, 3844, 4387, 3319, 5123, 8464, 2538, 6721, 4961, 970, 3292, 6538, 9568, 6323, 9080, 5340, 6728, 5675, 7762, 6099, 7864, 2538, 1809, 7279, 4288, 3611, 8930, 677, 6998, 7947, 9299, 7679, 9669, 1566, 6297, 4983, 5610, 1931, 9274, 5328, 6454, 8331, 5236, 2637, 6334, 1038, 7188, 9224, 6110, 2661, 5856, 3869, 945, 3257, 9550, 9420, 3547, 5203, 6666, 9290, 5360, 7666, 4964, 272, 4826, 5160, 9472, 6635, 7526, 9357, 3732, 8250, 487, 7051, 9981, 3348, 2706, 3392, 1690, 8895, 865, 5263, 2735, 8234, 9009, 6911, 4580, 916, 1491, 5050, 5508, 2002, 2238, 2415, 7967, 7021, 5979, 4241, 584, 2546, 728, 3207, 599, 8736, 5958, 2554, 1127, 4861, 7627, 1017, 937, 8562, 449, 1656, 2432, 7466, 7845, 9820, 931, 5943, 2969, 1345, 5631, 4077, 1058, 8548, 3346, 9925, 5242, 5834, 337, 1628, 7407, 183, 4451, 2497, 3538, 5416, 9971, 7834, 3882, 8250, 2098, 688, 4639, 3776, 1986, 94, 8847, 9345, 6380, 246, 5291, 4199, 843, 492, 475, 5473, 6975, 9353, 2102, 1233, 1851, 6985, 5563, 9231, 1688, 8461, 572, 2261, 4848, 5946, 3341, 162, 6835, 1160, 2777, 2647, 3925, 3957, 7405, 3820, 9406, 6543, 8843, 876, 3257, 9277, 5353, 20, 5109, 8839, 5536, 9496, 8311, 8825, 2973, 8703, 3990, 693, 3506, 930, 9086, 2686, 8518, 1297, 4174, 781, 1105, 3374, 7898, 239, 1378, 8831, 425, 5429, 9577, 7808, 6023, 114, 5804, 655, 3877, 7041, 3830, 47, 4404, 685, 164, 4293, 1246, 9223, 5830, 2670, 4077, 1732, 9380, 9399, 7458, 4268, 1654, 2819, 1327, 4764, 4283, 6281, 4621, 7845, 2387, 8900, 1719, 5979, 7157, 5681, 1069, 7334, 9882, 4868, 3763, 8628, 3408, 8835, 4575, 3125, 6792, 6441, 9726, 14, 7127, 8661, 3375, 9527, 2345, 5208, 1110, 6157, 1130, 6811, 4203, 1344, 9755, 535, 9209, 3414, 7299, 9274, 4623, 4150, 2427, 9705, 5042, 1470, 5441, 9512, 89, 6526, 1142, 5460, 2448, 3323, 7568, 1082, 8310, 4973, 2985, 1373, 4350, 3409, 3150, 6500, 9810, 7367, 8848, 1065, 4923, 8325, 1446, 9483, 1914, 1714, 2218, 4013, 2291, 5164, 1223, 6213, 3229, 5971, 8882, 6061, 5971, 4955, 8878, 8710, 1605, 2638, 4758, 6848, 4024, 2888, 887, 1508, 7026, 1193, 3058, 5882, 751, 7383, 5519, 3795, 863, 8137, 8325, 6832, 4485, 9453, 5379, 8136, 8537, 1746, 2779, 3766, 8983, 1247, 9089, 4393, 1998, 4491, 6688, 9283, 7491, 6930, 4661, 6219, 5691, 518, 2290, 7899, 3076, 8476, 1756, 6130, 3884, 1787, 1006, 9378, 2152, 2321, 148, 7235, 1887, 5581, 1553, 8543, 7757, 5862, 2985, 1924, 817, 7362, 1415, 4053, 4270, 6048, 4873, 4153, 6894, 4943, 8335, 2843, 2490, 9764, 4879, 5832, 3955, 3976, 9284, 7444, 7389, 7384, 6554, 5413, 2639, 9091, 1108, 8678, 3204, 1184, 7079, 9830, 6044, 8245, 4844, 2134, 3788, 7729, 9714, 2511, 3962, 131, 7529, 9946, 3730, 2896, 216, 8533, 7923, 529, 2263, 1381, 2867, 6258, 6774, 5326, 1847, 2469, 3461, 7293, 3692, 3469, 7946, 2671, 4097, 3220, 6702, 6871, 9850, 2885, 3776, 620, 5343, 5362, 1888, 9576, 298, 1711, 9093, 8586, 6045, 7637, 2728, 1125, 7434, 4112, 8311, 3199, 5881, 2050, 4275, 3315, 6885, 1086, 9538, 7183, 575, 797, 397, 2983, 74, 1756, 2451, 336, 797, 3020, 5189, 9414, 4756, 2161, 3272, 934, 3856, 9988, 4870, 6516, 210, 81, 6301, 3479, 3860, 2329, 7358, 8760, 624, 8785, 383, 1911, 5894, 7506, 410, 2886, 8683, 5975, 2364, 1180, 405, 4450, 6870, 4739, 2320, 7, 3376, 4697, 5435, 9662, 929, 3619, 8268, 3845, 8600, 8614, 2696, 5757, 3654, 413, 8876, 1128, 6242, 7990, 3015, 2962, 8148, 5204, 3165, 1829, 442, 8510, 4917, 6690, 4294, 8287, 8780, 911, 8909, 4580, 9009, 1220, 8185, 6033, 2822, 13, 8793, 8764, 6773, 6955, 4716, 9760, 249, 1699, 6153, 8172, 129, 637, 7659, 2242, 7392, 630, 8189, 5496, 6704, 5006, 9794, 7930, 9866, 3915, 8543, 7750, 911, 2149, 383, 3198, 3475, 5976, 3790, 3530, 4252, 8021, 8095, 4611, 9959, 4448, 5159, 9177, 9972, 9331, 63, 7231, 7685, 3802, 5685, 5257, 7731, 1990, 9499, 1861, 5977, 7930, 9111, 8559, 4135, 8561, 7906, 3371, 1488, 4902, 297, 6495, 5484, 3882, 6191, 8550, 983, 7009, 9865, 8622, 9472, 133, 688, 219, 8155, 7250, 1763, 8594, 1935, 3272, 8834, 6190, 937, 8781, 4724, 9567, 872, 1656, 2386, 6070, 5326, 5543, 7066, 8891, 1397, 5898, 7613, 327, 3912, 3461, 8832, 7290, 4645, 9954, 6815, 1622, 4146, 9613, 6822, 9842, 4901, 7638, 8966, 2120, 299, 9187, 998, 4951, 4082, 923, 3279, 9441, 8318, 5403, 607, 5950, 9016, 8245, 8423, 8504, 4410, 9085, 8845, 589, 9124, 7754, 4187, 5072, 3163, 3995, 6334, 6680, 1028, 2799, 7655, 7376, 2749, 1099, 5982, 1733, 8485, 2953, 6202, 731, 4255, 5907, 7530, 4457, 3827, 5628, 4911, 2152, 3005, 7495, 9039, 7527, 5180, 6926, 6068, 8730, 6500, 8044, 4555, 2711, 9469, 8963, 8598, 1816, 641, 6040, 794, 1387, 3154, 930, 9170, 7109, 1874, 3342, 8026, 3067, 1048, 4878, 1924, 8119, 690, 1957, 9799, 3177, 8142, 1452, 875, 7795, 4847, 6033, 1854, 2972, 718, 1555, 994, 8958, 6183, 9943, 6316, 585, 7848, 150, 3559, 9310, 4197, 8540, 6623, 9780, 7239, 8395, 9767, 5430, 5976, 5846, 739, 2978, 2616, 3638, 7390, 9004, 2795, 3721, 5254, 9305, 1801, 8926, 8027, 1909, 7325, 4090, 2388, 5821, 6871, 1078, 25, 4565, 3610, 9518, 6314, 2484, 1918, 1363, 710, 1699, 3119, 7914, 8997, 3650, 2924, 3564, 9375, 7251, 9929, 2660, 5971, 6349, 2237, 5252, 8097, 9002, 7653, 976, 9168, 8585, 6287, 9521, 4105, 6381, 2336, 7171, 7737, 3244, 1807, 2567, 9475, 5840, 8279, 8802, 7132, 7034, 3849, 4732, 4334, 9354, 2440, 2178, 6645, 8440, 9451, 3061, 2565, 3871, 318, 1513, 2498, 6924, 3137, 1655, 2358, 9827, 2327, 1483, 4862, 5130, 7241, 3270, 5197, 6685, 7025, 5277, 696, 5800, 6527, 1432, 3609, 6544, 3047, 4404, 4477, 8666, 1009, 9714, 8422, 5746, 296, 6117, 7737, 7174, 3516, 1976, 3696, 7481, 5136, 1638, 1817, 7104, 8924, 4864, 5925, 8888, 8668, 1659, 9834, 6670, 5919, 4703, 8114, 8165, 4169, 3753, 7866, 2452, 9969, 9433, 4052, 8501, 2036, 6293, 2229, 1272, 3872, 3653, 6951, 7614, 234, 6324, 3752, 798, 4392, 8789, 2106, 3235, 5976, 4156, 6113, 7547, 3095, 3025, 8360, 1674, 9963, 7025, 1900, 2613, 4746, 8668, 7519, 8584, 7872, 2952, 966, 3537, 5533, 1820, 4444, 610, 6309, 5686, 781, 9778, 5246, 9078, 3339, 4093, 9861, 8289, 6221, 7440, 2906, 9039, 6459, 4638, 3583, 2284, 8707, 8973, 4668, 6411, 3335, 777, 8158, 2254, 1421, 7537, 4292, 752, 2158, 8837, 209, 6555, 4999, 1262, 3149, 8850, 3691, 9926, 4980, 4105, 2782, 6619, 1349, 2567, 5819, 1425, 1476, 3483, 6816, 5229, 9240, 4228, 2189, 4954, 5294, 5480, 5497, 6696, 6356, 9790, 3677, 8680, 1119, 3252, 6, 5729, 5493, 6569, 4967, 2846, 8932, 9348, 1909, 3502, 1145, 8779, 6745, 4739, 3130, 77, 9794, 3508, 9149, 9769, 6000, 7322, 8526, 5892, 9130, 5430, 4781, 6407, 7849, 4666, 4445, 9791, 4235, 9900, 8775, 5292, 6449, 8774, 7925, 818, 6241, 7448, 9303, 9114, 4420, 7237, 1505, 4834, 6361, 6433, 1435, 9273, 6769, 3738, 2912, 5828, 6641, 1852, 175, 1788, 3187, 5339, 6749, 446, 260, 1565, 4594, 3081, 8776, 6125, 8359, 723, 7970, 1402, 9374, 9237, 2684, 5413, 3562, 5674, 453, 1479, 4882, 6292, 8478, 1544, 7683, 1735, 1340, 7065, 5611, 2604, 4666, 5851, 2255, 9632, 2243, 7766, 6469, 5538, 6700, 99, 1051, 6616, 3032, 2018, 7886, 5435, 8594, 2533, 6260, 2198, 4919, 9987, 6051, 3739, 9913, 6214, 7047, 2430, 605, 1741, 2128, 184, 4398, 7003, 5953, 7109, 8696, 7526, 915, 7910, 6301, 5865, 3840, 4160, 5956, 3074, 7880, 1020, 2869, 805, 2575, 293, 6222, 119, 4477, 9805, 7713, 403, 8221, 120, 4819, 3849, 5838, 8702, 1215, 7754, 3973, 6574, 6337, 6589, 3097, 8902, 6716, 2270, 8598, 3500, 8324, 9177, 7691, 6184, 3573, 8835, 7180, 8871, 8362, 2690, 1888, 2810, 8038, 7968, 9971, 5509, 7503, 3276, 1654, 7936, 7342, 8408, 5802, 5273, 9296, 1836, 2857, 7328, 7416, 5762, 3341, 5994, 683, 4760, 4567, 5663, 2850, 4161, 3977, 2236, 9675, 5524, 3132, 1506, 9161, 507, 2379, 2805, 7840, 838, 2054, 2061, 7369, 8998, 3233, 3336, 2596, 9330, 3794, 7062, 4353, 3477, 8358, 9180, 3126, 4653, 6492, 1106, 8924, 7646, 792, 4053, 8962, 6957, 5746, 4166, 3865, 6870, 8661, 5144, 1542, 8503, 8848, 6390, 691, 6834, 8744, 9659, 9421, 6111, 8692, 5095, 2679, 1303, 2192, 6001, 7270, 682, 6011, 8400, 2756, 9066, 3864, 5873, 8734, 6446, 6065, 9924, 9814, 1776, 4463, 8335, 4673, 9296, 4323, 4745, 1065, 1886, 1265, 4416, 76, 5587, 7200, 4548, 5003, 8233, 4859, 8633, 5676, 142, 5746, 2809, 9161, 886, 4090, 624, 3951, 4902, 5497, 6430, 8912, 9450, 2747, 3097, 1057, 959, 1440, 72, 4125, 4521, 4891, 6921, 6064, 6447, 7236, 2524, 4316, 8426, 5911, 6821, 7015, 9658, 7715, 8254, 1115, 5265, 764, 3090, 757, 3893, 1306, 324, 8935, 2450, 3928, 4006, 2263, 4166, 1285, 5906, 2269, 3236, 1478, 5621, 4793, 5266, 8834, 1406, 1770, 8058, 8421, 5684, 8792, 9917, 5678, 6845, 8907, 1563, 2080, 1720, 4481, 6844, 8053, 884, 156, 5498, 8694, 6134, 3714, 7189, 2900, 4760, 4699, 6942, 3747, 4676, 1159, 2508, 9017, 1805, 3718, 5146, 468, 1990, 8253, 7030, 4497, 6888, 4232, 8132, 4502, 8225, 7058, 474, 5368, 6672, 8494, 6945, 4822, 9194, 9330, 7978, 8252, 8600, 999, 7622, 9297, 7671, 9754, 5485, 8506, 8518, 3214, 3785, 676, 9019, 9912, 1800, 3246, 6927, 2673, 1373, 3036, 6621, 9320, 2142, 6214, 6807, 2910, 7128, 9238, 1393, 8823, 6871, 7678, 7684, 3407, 6191, 672, 6156, 6371, 8870, 5604, 6635, 6596, 8471, 8581, 9684, 3688, 8304, 5316, 8560, 4745, 9764, 5940, 8828, 4019, 8251, 1468, 7129, 4842, 9101, 4664, 9611, 8178, 1419, 8136, 299, 4933, 2118, 4304, 9781, 561, 7334, 7575, 9067, 6519, 580, 2776, 8624, 8173, 6624, 771, 1229, 4109, 4748, 5357, 959, 3156, 8126, 2044, 615, 1300, 9474, 6460, 6569, 9042, 7974, 5100, 3693, 1416, 2477, 6866, 434, 708, 1661, 4979, 1350, 4952, 3856, 9324, 2127, 4104, 5399, 5436, 6021, 591, 754, 6663, 5333, 1114, 7657, 6116, 4128, 5643, 38, 1888, 2809, 935, 1033, 2762, 4571, 4729, 6195, 9140, 9073, 8013, 91, 296, 5484, 4277, 796, 9841, 8833, 6888, 5973, 638, 3400, 7246, 903, 2962, 6542, 405, 7675, 5494, 2020, 1791, 698, 8534, 7997, 8370, 9074, 5168, 4532, 3654, 2792, 5016, 740, 9339, 8305, 6919, 3566, 9392, 4023, 6327, 9575, 9069, 1642, 9497, 1383, 7626, 876, 2751, 1674, 7990, 9012, 9250, 1875, 8177, 4524, 9309, 3109, 33, 7763, 6240, 2664, 2993, 9404, 8942, 5786, 4638, 8253, 4335, 4539, 4281, 321, 3775, 5711, 5751, 2695, 813, 4416, 6692, 4128, 9597, 5610, 411, 4084, 726, 3981, 8528, 3214, 7813, 6255, 582, 1388, 2856, 8903, 1129, 8896, 4020, 6035, 8518, 4833, 8528, 9123, 4462, 9227, 1416, 9995, 9431, 3547, 4874, 2709, 3978, 1396, 8268, 6733, 5990, 8204, 8516, 9699, 3436, 9359, 7887, 5885, 8513, 6411, 9131, 466, 9055, 1283, 7260, 8640, 3267, 2093, 3451, 8502, 6049, 4964, 5810, 3483, 6972, 9062, 241, 3061, 8750, 7574, 6636, 659, 7206, 1243, 8395, 6964, 3509, 7232, 4041, 5310, 6432, 7426, 4166, 9192, 7473, 9621, 8405, 6495, 358, 2655, 6494, 3797, 2337, 2539, 5261, 9837, 1270, 9336, 1937, 3409, 8368, 9816, 5518, 6156, 1452, 4673, 4124, 1697, 1563, 7439, 8757, 3842, 2357, 7952, 4907, 5753, 4817, 1894, 3215, 9890, 6382, 4281, 8411, 6303, 8446, 7059, 3786, 6371, 5045, 4866, 4762, 7352, 398, 4345, 2401, 3689, 4438, 2255, 5765, 4440, 8255, 4526, 4755, 7449, 3167, 7109, 2201, 5845, 5886, 4535, 1563, 9401, 2460, 1530, 1682, 2836, 1512, 9737, 6680, 8956, 954, 6259, 2797, 3930, 4714, 7177, 5013, 8809, 6150, 484, 7608, 7243, 1920, 6700, 1553, 3876, 2990, 7122, 7776, 8397, 9001, 5351, 5784, 7602, 2398, 2899, 6177, 8884, 9584, 2815, 5639, 3673, 1395, 2715, 7225, 167, 1475, 2377, 2267, 8204, 9051, 5295, 9252, 3353, 8047, 4698, 2945, 7426, 514, 6406, 8480, 7888, 3088, 726, 7078, 6511, 9334, 5682, 8554, 7120, 645, 788, 7623, 840, 5587, 5322, 3870, 8479, 2073, 4440, 4113, 9394, 5462, 7347, 5466, 8754, 8650, 4710, 5090, 3619, 684, 1873, 218, 4110, 5029, 2277, 6629, 5839, 2467, 1017, 4732, 9815, 3223, 6344, 3977, 5115, 775, 9793, 3404, 2291, 8668, 1222, 9993, 3996, 1349, 2397, 8856, 5031, 611, 6370, 564, 4568, 1403, 3571, 765, 2023, 327, 4402, 3430, 7666, 5669, 4471, 8951, 1881, 1558, 2716, 9628, 5665, 3184, 6175, 8948, 1314, 3181, 8691, 5507, 5993, 9210, 4639, 9248, 5975, 6025, 6669, 4760, 2751, 2863, 6780, 8649, 4380, 3767, 8303, 1688, 569, 9421, 9692, 1179, 7543, 5587, 510, 7408, 9850, 3471, 9364, 9972, 4940, 9867, 6223, 6077, 8729, 3940, 3240, 6673, 7010, 4556, 1688, 2556, 3242, 393, 4973, 6014, 444, 1379, 8779, 2635, 7346, 9897, 4041, 2057, 3023, 6733, 3920, 4885, 7799, 5843, 7664, 7566, 6130, 5862, 4795, 5849, 4316, 1860, 2760, 2987, 4152, 1021, 145, 1026, 1448, 6839, 5749, 7853, 2215, 2093, 1959, 495, 9199, 955, 8125, 4688, 195, 8772, 1122, 3628, 7895, 7517, 9844, 3250, 1186, 2335, 1526, 2342, 8819, 3016, 7327, 4815, 2841, 9147, 5498, 3050, 7162, 9659, 2260, 8997, 2653, 452, 5826, 7909, 6784, 5059, 3672, 8032, 6770, 5432, 8530, 2580, 9674, 2747, 2159, 2414, 6702, 2533, 7697, 5860, 6989, 802, 3566, 8988, 3990, 5974, 9138, 3602, 4798, 7573, 1627, 4614, 3055, 6856, 1532, 7083, 6739, 3439, 6762, 8634, 6749, 5258, 3026, 3869, 4112, 6703, 5201, 5796, 1030, 6520, 7514, 6355, 5610, 5281, 9284, 290, 2190, 8942, 7001, 60, 3750, 4595, 8329, 6880, 955, 602, 3989, 6227, 3226, 6945, 2820, 5692, 1922, 9417, 8705, 871, 2266, 7112, 9770, 2147, 4120, 1592, 8515, 9924, 7659, 6934, 7953, 8065, 9425, 7107, 5984, 7895, 8274, 6231, 6750, 1476, 2820, 1545, 7965, 4301, 7092, 7640, 9893, 9496, 3859, 2421, 1199, 6643, 6966, 1174, 811, 7627, 2982, 9093, 267, 1830, 702, 6655, 6950, 6442, 3328, 3702, 4086, 5347, 6144, 864, 3818, 4337, 4999, 7957, 6181, 871, 5025, 6052, 7901, 7086, 1424, 5023, 317, 6224, 1399, 9466, 9027, 5021, 9567, 1664, 8882, 905, 3141, 9982, 594, 8316, 1498, 4454, 699, 6496, 4034, 6974, 1342, 4695, 950, 398, 7660, 1219, 9218, 3110, 1596, 1980, 6759, 7029, 8201, 3134, 3034, 451, 9778, 3608, 9539, 5544, 249, 8861, 9167, 1090, 612, 5911, 4031, 2772, 5887, 1951, 7447, 945, 3736, 9878, 1711, 9093, 7218, 3824, 6037, 2876, 9315, 3284, 4874, 4297, 821, 525, 3216, 5553, 5272, 76, 354, 7997, 7983, 8659, 8461, 8284, 8863, 3067, 863, 2046, 6531, 9279, 4255, 6762, 5818, 4223, 7524, 4649, 231, 7438, 9660, 9016, 8865, 9797, 9863, 8266, 8097, 3134, 890, 3460, 3798, 2089, 7805, 2272, 4996, 7290, 6493, 7258, 7856, 9129, 8827, 4438, 1350, 1472, 266, 1208, 6548, 7857, 4853, 4282, 860, 2670, 4887, 2442, 5654, 6239, 2929, 6921, 8571, 1760, 4551, 9869, 7019, 3343, 5667, 3455, 8920, 1762, 2369, 6526, 9353, 1136, 4481, 4843, 2936, 275, 3497, 8891, 2020, 3132, 8208, 696, 4304, 3199, 9492, 3536, 6082, 6594, 9717, 2644, 4181, 1091, 2664, 5083, 1127, 8671, 9716, 5404, 7532, 2764, 5032, 4663, 1305, 7936, 7715, 3277, 8665, 9319, 731, 8580, 5372, 6961, 487, 1764, 6451, 2705, 6549, 956, 7366, 5951, 5621, 2973, 1358, 4247, 9067, 2350, 571, 1464, 7729, 8151, 3582, 1270, 3075, 9446, 5440, 6105, 7073, 9725, 202, 1164, 5408, 5745, 3083, 718, 3785, 7037, 2006, 308, 6313, 7277, 9760, 7285, 8288, 1892, 3574, 813, 5746, 5926, 8613, 5899, 6697, 8142, 9744, 9282, 304, 7609, 2526, 444, 3017, 3322, 2602, 4690, 4233, 4772, 1681, 1413, 2215, 3987, 4743, 8281, 3760, 6803, 5810, 820, 1910, 5799, 9934, 644, 1548, 9892, 5159, 1414, 2844, 9635, 5650, 975, 1313, 3634, 4196, 9847, 4013, 2708, 2409, 4905, 8356, 7772, 7919, 8821, 3887, 662, 1528, 3471, 4043, 5199, 6396, 9917, 9815, 2984, 356, 1276, 569, 614, 7936, 1643, 570, 3109, 3746, 4174, 373, 9713, 7201, 4636, 2412, 3227, 7623, 7170, 9683, 6474, 2036, 1343, 6227, 7799, 9928, 1574, 7384, 3568, 3020, 7791, 7732, 4646, 1802, 3157, 9578, 7759, 6881, 4777, 771, 9028, 8962, 5486, 2045, 7444, 853, 9243, 7638, 63, 1397, 172, 4405, 957, 6768, 4785, 8834, 8181, 9048, 2558, 4489, 8166, 2196, 1593, 7660, 7537, 5295, 9424, 8110, 4172, 1304, 9456, 792, 4289, 2177, 9967, 1639, 5293, 529, 3378, 6060, 8209, 6274, 2791, 4091, 9989, 4739, 8317, 7773, 7056, 2086, 5799, 1086, 7105, 7507, 3118, 9183, 8057, 436, 4444, 9861, 8270, 8839, 593, 4696, 2810, 9711, 7377, 7509, 5226, 7476, 3187, 173, 800, 6878, 3492, 6996, 6322, 4173, 6562, 4450, 6824, 3860, 4626, 7445, 8929, 7306, 9819, 845, 3727, 5336, 8393, 9727, 4262, 6445, 7226, 9523, 8273, 4413, 1124, 102, 4830, 2381, 9501, 1129, 1453, 9737, 7394, 4496, 2900, 5519, 4785, 6067, 6862, 9906, 6942, 4640, 8023, 7255, 3170, 1927, 4498, 6347, 1127, 845, 2467, 2379, 7613, 8730, 3830, 6442, 2425, 5131, 7382, 6879, 8657, 3520, 3606, 8628, 9233, 8015, 7276, 4552, 1208, 7935, 5025, 7726, 8076, 7774, 690, 4172, 4754, 3212, 4994, 3325, 9799, 590, 5398, 5007, 8762, 9707, 5287, 9286, 3087, 4978, 8516, 9207, 4861, 8371, 2397, 4734, 5249, 4961, 4249, 9848, 2409, 6694, 3617, 826, 3754, 9983, 8610, 9592, 7915, 5868, 8447, 1310, 1192, 3362, 6653, 2779, 2399, 5288, 1734, 9393, 6, 7213, 4454, 1175, 8387, 6112, 7841, 7319, 4034, 4119, 475, 9488, 2708, 265, 6382, 693, 3578, 1172, 3224, 6907, 7454, 9975, 6170, 8575, 5194, 2745, 9530, 8798, 7822, 9169, 8786, 4428, 2094, 9851, 9423, 7822, 2594, 8281, 3266, 1519, 1877, 1248, 9058, 8607, 2343, 8839, 9385, 6591, 1355, 8972, 3987, 9462, 2937, 2398, 9522, 8095, 5453, 4483, 9740, 873, 2534, 4772, 6555, 3222, 232, 9389, 3132, 6892, 7739, 5694, 3841, 6263, 3817, 5868, 2079, 6405, 7076, 5040, 9841, 24, 2429, 887, 4291, 4120, 7678, 8896, 6759, 7278, 5906, 9393, 4355, 8298, 4871, 6675, 4193, 63, 1683, 9377, 6239, 2593, 3868, 2525, 6957, 9150, 654, 7771, 5521, 146, 329, 916, 3286, 2721, 7857, 6037, 3336, 5633, 3452, 5965, 1562, 1693, 248, 4226, 7872, 3475, 4994, 4157, 1845, 9975, 3519, 153, 6279, 3934, 9415, 72, 2038, 3476, 5781, 5758, 5912, 3574, 5449, 4116, 4072, 6569, 9510, 3174, 7634, 4065, 6708, 3046, 2761, 4555, 9919, 3191, 4562, 8755, 7174, 2130, 7158, 5502, 2365, 2468, 7780, 5986, 9467, 6590, 8700, 8073, 3725, 5140, 2757, 8002, 465, 5231, 7496, 8128, 4060, 8011, 8354, 5177, 1733, 3465, 6198, 3256, 7671, 9678, 7193, 9611, 7331, 5986, 8644, 4373, 2331, 1491, 5430, 8685, 2360, 7199, 6768, 7630, 8806, 77, 8630, 5669, 7043, 4837, 8052, 6246, 7859, 9299, 1015, 1832, 1519, 904, 880, 260, 4817, 7033, 8501, 9258, 2425, 4494, 5648, 2411, 4315, 1572, 8174, 2496, 9519, 8380, 1792, 18, 3072, 9130, 9645, 9680, 5454, 3478, 9055, 4172, 7084, 8510, 1121, 3630, 3570, 9602, 9256, 8751, 4204, 8871, 1991, 2287, 8601, 3333, 6217, 193, 476, 7609, 3803, 4570, 4831, 6468, 6478, 3189, 4491, 7497, 6954, 9585, 7506, 7283, 9894, 3729, 933, 4509, 9089, 8939, 3534, 1160, 4540, 1578, 344, 2216, 4718, 989, 4417, 791, 1743, 8325, 8991, 1249, 9197, 826, 5080, 4103, 3178, 5271, 7112, 7260, 4731, 1402, 3343, 2219, 2875, 8997, 5345, 5455, 646, 6608, 5140, 3320, 382, 9252, 4357, 4509, 7994, 1473, 2451, 6485, 6802, 2553, 4307, 1901, 5396, 5571, 1690, 6901, 4834, 5977, 5126, 227, 8770, 2570, 1462, 974, 540, 3113, 1933, 5428, 3328, 5916, 99, 2660, 2973, 461, 1604, 8949, 251, 3581, 3007, 6590, 1282, 6396, 4503, 4891, 3169, 1330, 7174, 2543, 792, 2858, 7301, 6588, 1822, 961, 4518, 4588, 2188, 1611, 2186, 8988, 7759, 8479, 5963, 4508, 4586, 2022, 1572, 7552, 658, 8703, 2243, 1682, 8528, 5102, 5134, 2029, 6531, 8953, 8027, 2371, 235, 618, 5958, 4089, 767, 7088, 3711, 8054, 6792, 237, 8905, 1623, 9348, 6505, 3917, 30, 6676, 1486, 2037, 6814, 2029, 2714, 9361, 2977, 8635, 3504, 7205, 1826, 1770, 5351, 2857, 1763, 4955, 5945, 3240, 8089, 3125, 6117, 8049, 1595, 9297, 6206, 4777, 5478, 4637, 3851, 3063, 7580, 3770, 8101, 2135, 5824, 5343, 7515, 3176, 9707, 9491, 3681, 270, 4603, 214, 140, 6704, 9103, 8825, 1896, 3003, 1868, 8065, 6514, 557, 7563, 2152, 8639, 9579, 8920, 892, 4579, 2347, 5508, 9343, 7259, 7563, 3781, 6629, 9572, 8120, 8257, 5129, 7729, 7096, 5222, 8936, 8472, 2209, 6885, 6676, 502, 9695, 2034, 3506, 3367, 1522, 3942, 6124, 430, 8269, 2189, 1457, 4227, 825, 6297, 704, 7184, 2863, 5981, 336, 7892, 6466, 562, 9963, 3760, 467, 9989, 5503, 6508, 1307, 2247, 4684, 2883, 6276, 1740, 6552, 9890, 5456, 7133, 2158, 2541, 4737, 9350, 7562, 3723, 7119, 8216, 7247, 7365, 502, 6552, 7505, 7211, 4373, 4654, 1659, 7247, 223, 1239, 1979, 807, 1038, 1252, 5249, 6799, 7499, 2505, 1188, 6645, 9671, 2399, 5500, 3228, 3494, 610, 5913, 2457, 2847, 4659, 811, 7625, 9037, 4391, 6631, 5897, 2161, 6790, 6377, 460, 5005, 3469, 1356, 7529, 5994, 6236, 548, 4539, 8419, 8041, 5252, 9071, 3336, 380, 760, 3753, 2252, 1777, 8397, 1327, 7416, 3433, 8324, 396, 4406, 2680, 4083, 5983, 2582, 4616, 3203, 6585, 6236, 8149, 7315, 8499, 1776, 2048, 3043, 3894, 1260, 2220, 650, 5408, 6930, 5028, 5393, 4310, 9908, 2739, 7990, 6140, 314, 490, 474, 5791, 7231, 4653, 8787, 7596, 5476, 8694, 4331, 3286, 5340, 1537, 8687, 4932, 9790, 927, 3936, 1408, 215, 403, 262, 3625, 9477, 3448, 1736, 6146, 6365, 6024, 5013, 1553, 7029, 5366, 4270, 9504, 3899, 6438, 8825, 7728, 2892, 4528, 5888, 6353, 5646, 7376, 2128, 4667, 2135, 2953, 7563, 8409, 675, 3693, 1318, 1705, 2802, 8758, 3003, 4045, 1511, 5633, 808, 8172, 7642, 1470, 4367, 9569, 8263, 4321, 6180, 8923, 5277, 6308, 1330, 4668, 7360, 83, 7446, 9867, 2392, 5214, 434, 1890, 32, 730, 4956, 3008, 311, 9441, 5900, 2423, 258, 7421, 2321, 8735, 8632, 3601, 8669, 6610, 8453, 1216, 4324, 4446, 3831, 756, 5282, 9878, 7252, 8024, 4818, 5249, 6146, 3534, 23, 9818, 8750, 1339, 5047, 2862, 3750, 406, 1978, 9937, 9679, 9196, 2720, 6489, 9759, 3727, 4024, 3249, 8659, 9266, 4682, 7464, 4603, 3791, 4558, 5087, 6249, 4481, 3155, 3455, 9398, 5482, 4425, 7729, 7309, 7310, 8391, 8851, 1102, 8886, 6534, 3322, 8588, 3359, 6979, 1850, 816, 1000, 5569, 8352, 6276, 7976, 8053, 6681, 2136, 1061, 6024, 3224, 2848, 8445, 7497, 9540, 3747, 8257, 7416, 6823, 4766, 3029, 4812, 5712, 1264, 6498, 6510, 8690, 1772, 837, 9900, 6787, 8841, 9213, 5991, 6878, 2933, 4464, 9669, 9361, 8350, 7366, 5232, 3648, 7128, 7245, 7892, 8704, 1898, 5140, 9269, 493, 8080, 4528, 9703, 3252, 9162, 3737, 2164, 2889, 3548, 1358, 1466, 4931, 5756, 957, 1962, 27, 9016, 860, 4458, 8129, 445, 3075, 7172, 1271, 9360, 8495, 3989, 1283, 4937, 2913, 4847, 2353, 9651, 333, 2455, 2671, 9150, 4412, 4359, 7552, 9773, 1914, 5597, 8474, 1993, 2824, 7003, 5704, 9499, 5691, 277, 1752, 4054, 8491, 5270, 9837, 8555, 9973, 6427, 4302, 5490, 3226, 3958, 662, 360, 8446, 5148, 8754, 3435, 2201, 5096, 2694, 6336, 2377, 1558, 5880, 1086, 6127, 3096, 1683, 5137, 7693, 5541, 4166, 6199, 3966, 2613, 7475, 5990, 8782, 8262, 9376, 5988, 1182, 9914, 3449, 7854, 5602, 5767, 2572, 674, 5314, 677, 6635, 7844, 7948, 8692, 1582, 2573, 832, 2819, 8590, 807, 7699, 6042, 9803, 1074, 5565, 6401, 5031, 5059, 3051, 2886, 7865, 7984, 685, 1164, 9916, 6277, 5689, 9798, 2429, 5553, 5414, 1888, 752, 5914, 6994, 1543, 5371, 8933, 253, 9675, 7721, 5551, 6812, 5220, 104, 391, 8759, 6954, 5084, 7025, 4682, 8524, 3818, 8596, 9720, 4650, 9117, 8541, 4483, 11, 8101, 282, 1798, 8872, 2435, 8896, 5867, 5759, 1631, 8294, 8021, 2321, 2066, 8295, 7288, 8868, 3772, 4340, 1852, 609, 9391, 4976, 8013, 9719, 4338, 9218, 8990, 3606, 1711, 2470, 1505, 9733, 6165, 5884, 2816, 1630, 8566, 472, 9784, 5036, 9594, 8592, 8121, 2115, 7579, 2130, 3495, 2504, 1607, 8635, 9884, 4741, 7697, 6016, 3171, 2423, 5440, 5545, 7151, 4208, 8975, 4225, 5890, 1221, 6219, 9944, 3094, 4160, 5288, 817, 5560, 319, 2909, 4964, 8423, 4723, 1971, 1581, 538, 483, 5481, 955, 8935, 3830, 2019, 5954, 3581, 172, 3431, 9177, 8843, 3846, 5183, 5597, 1718, 6154, 8425, 8124, 3559, 6256, 8986, 9579, 7803, 9383, 4166, 9489, 7665, 3952, 5498, 8202, 8959, 4498, 3763, 8580, 494, 8885, 3876, 4133, 873, 9367, 2164, 1635, 3346, 1370, 7741, 7498, 2046, 2324, 4799, 6426, 5444, 653, 9098, 7383, 9569, 1924, 3592, 5543, 8246, 6651, 9825, 4375, 2617, 4518, 1044, 7479, 2464, 1137, 8261, 1289, 4777, 4695, 185, 7670, 2565, 4059, 3292, 9481, 5928, 2035, 9803, 5618, 6475, 5863, 794, 2932, 7274, 8663, 1728, 6551, 4231, 7299, 1990, 2887, 5861, 9952, 540, 6771, 4813, 1530, 8900, 5135, 2796, 7740, 4261, 8786, 3811, 1193, 5641, 9385, 8054, 6023, 9663, 322, 4302, 9487, 2986, 7282, 7351, 9871, 6991, 4704, 3522, 5816, 1867, 6487, 836, 7647, 76, 8280, 8742, 8672, 9587, 981, 8163, 5574, 6456, 3383, 269, 3781, 4053, 5626, 8535, 8673, 7226, 124, 5548, 9316, 1992, 7233, 7591, 1308, 2886, 1009, 3097, 8298, 7792, 4153, 2007, 6100, 7122, 2150, 8361, 9619, 8977, 1709, 3356, 3206, 9906, 6566, 4657, 9966, 3569, 3388, 7900, 7552, 6348, 1439, 6485, 390, 1686, 8978, 218, 4302, 9940, 701, 4636, 4473, 4099, 3947, 1901, 7725, 5280, 1869, 6408, 1940, 8878, 3606, 5689, 5227, 532, 9934, 3969, 6036, 796, 1039, 5844, 724, 3974, 5707, 2026, 8725, 7891, 8467, 6945, 8517, 8538, 2129, 5897, 4870, 1974, 3680, 3415, 7452, 37, 6302, 3699, 3346, 5995, 1665, 4697, 9813, 6285, 4591, 4412, 263, 7671, 6804, 4686, 5933, 7159, 9040, 9690, 8450, 319, 2966, 3051, 3442, 2806, 895, 7634, 5648, 264, 3701, 5491, 4112, 1810, 5736, 8152, 6941, 7191, 5356, 1005, 2597, 1741, 1257, 4034, 3192, 8544, 8074, 2909, 5436, 1167, 1967, 9493, 6540, 9786, 395, 8200, 9460, 7034, 9622, 3686, 4599, 1961, 9660, 883, 7753, 3797, 9244, 1737, 7398, 4546, 1017, 9075, 9385, 9733, 6989, 9380, 4101, 5065, 4497, 9086, 1728, 5486, 5223, 1355, 4867, 597, 8256, 7064, 3083, 3957, 4166, 3221, 9835, 6569, 7923, 966, 8664, 3072, 120, 245, 6283, 9180, 7032, 9517, 9011, 7620, 9418, 5472, 4592, 113, 346, 7523, 8793, 4948, 4696, 1533, 3959, 2143, 5879, 5883, 6984, 4472, 6048, 7135, 2349, 25, 7469, 3036, 4892, 3346, 5214, 716, 8974, 2886, 1671, 6634, 7090, 3993, 2608, 1033, 8921, 3961, 1572, 8059, 3032, 1506, 9058, 6186, 5225, 5704, 2607, 2882, 7594, 4241, 1154, 2917, 2732, 6728, 5623, 8134, 2949, 5340, 5421, 6270, 5327, 4046, 2952, 2411, 6615, 3255, 7023, 7068, 3598, 7599, 559, 3270, 9323, 679, 8550, 6658, 5592, 5696, 9433, 7740, 3601, 7266, 5598, 4886, 4488, 2630, 1523, 9523, 1619, 9740, 629, 1308, 3260, 1206, 3834, 5086, 9888, 8603, 7608, 6202, 1425, 5717, 795, 5492, 1060, 9219, 1859, 2165, 8324, 4648, 2787, 4249, 1437, 4570, 867, 8738, 6225, 6676, 5983, 19, 7335, 7636, 6631, 2485, 2487, 158, 9981, 9285, 3663, 4263, 5449, 788, 4145, 2938, 2104, 8678, 595, 4183, 9321, 964, 1373, 6399, 9631, 7258, 62, 3657, 7570, 4409, 4488, 2865, 1758, 9190, 4384, 9363, 945, 1417, 2767, 8660, 3825, 1007, 3171, 2698, 9589, 7449, 9246, 655, 1479, 2939, 9510, 7954, 936, 2414, 964, 5493, 5356, 1902, 2197, 3216, 4442, 7452, 6700, 2845, 2413, 3613, 1854, 2554, 613, 4505, 2676, 3978, 1703, 1613, 5277, 3700, 89, 5513, 3081, 8322, 6471, 5651, 2607, 9572, 161, 3891, 3656, 155, 5034, 4133, 9585, 7774, 2299, 1290, 2701, 7496, 7646, 8567, 801, 4999, 9299, 8820, 3623, 127, 7582, 9101, 2859, 565, 6791, 6373, 6529, 9829, 8664, 655, 1917, 3581, 8771, 3619, 5817, 7423, 298, 7839, 6035, 2595, 9989, 5139, 5068, 3922, 5615, 7956, 7738, 4236, 4873, 906, 8950, 5203, 7574, 801, 4943, 5326, 8157, 1836, 5478, 4455, 3355, 5517, 80, 9821, 174, 7487, 1703, 2563, 2411, 45, 3033, 4639, 8024, 3095, 39, 3052, 9811, 2180, 6871, 4792, 9305, 2875, 3699, 9351, 6159, 2424, 712, 158, 77, 3566, 200, 5593, 2415, 111, 3592, 8949, 7042, 5062, 2707, 198, 6397, 4045, 6373, 2243, 8645, 7799, 2768, 4789, 2647, 4727, 7995, 9612, 2386, 4391, 8382, 3946, 6298, 2723, 6887, 2789, 7207, 5403, 7928, 9753, 4164, 9636, 1958, 1636, 8064, 1080, 1068, 825, 1184, 6561, 2486, 4926, 9387, 8098, 3718, 8541, 2429, 5774, 403, 8854, 868, 4751, 5397, 9212, 7894, 9216, 9770, 8660, 1305, 8420, 4468, 8617, 7258, 5149, 6121, 6587, 9847, 3269, 802, 3499, 2181, 1225, 28, 9504, 7674, 2648, 2762, 3557, 2675, 4552, 4768, 6648, 9968, 5778, 8314, 8861, 3235, 9281, 2307, 730, 7109, 7111, 4670, 232, 8737, 4889, 8897, 2360, 3191, 686, 3093, 2811, 2042, 1315, 56, 3065, 3091, 6026, 3498, 2092, 9564, 5974, 1731, 1458, 5685, 6800, 7276, 7950, 5122, 8246, 497, 470, 5594, 294, 5062, 6567, 7162, 6520, 1599, 5613, 5857, 4817, 4342, 444, 8305, 8337, 3080, 4010, 5972, 1174, 248, 3874, 8741, 6422, 4779, 5586, 2035, 4090, 5339, 797, 5361, 9181, 6341, 8843, 8297, 2929, 3578, 180, 4660, 9306, 9521, 937, 819, 577, 2132, 3963, 3146, 9554, 8894, 7809, 9615, 3966, 4996, 7847, 3119, 4810, 793, 90, 3178, 6046, 471, 5948, 6866, 7016, 8653, 5590, 9824, 4118, 5356, 6545, 4575, 5215, 793, 4588, 6927, 4907, 8095, 3834, 8099, 4310, 4538, 1073, 7572, 1521, 4604, 891, 9211, 7473, 1931, 4344, 5579, 2030, 8705, 9163, 8709, 8533, 251, 2169, 1857, 5735, 395, 5149, 3452, 1048, 599, 1015, 1012, 7553, 167, 4872, 3214, 9902, 4714, 5351, 6193, 3328, 9170, 8687, 5112, 9419, 5555, 5071, 6148, 3978, 5368, 8168, 3688, 8039, 3182, 3827, 3963, 8467, 3991, 5641, 6202, 3764, 2377, 8008, 2675, 9345, 4157, 9797, 4010, 936, 7504, 5060, 5256, 6121, 245, 2482, 5047, 6473, 2384, 7196, 9607, 8784, 1452, 9781, 5213, 9723, 5815, 4884, 3455, 3226, 9601, 7923, 7177, 4995, 9265, 5713, 9562, 877, 9583, 353, 9879, 7558, 7595, 9865, 2856, 8846, 8053, 7860, 1846, 2250, 6242, 913, 2372, 7986, 6638, 1057, 483, 147, 6804, 8860, 5499, 5629, 5176, 4861, 5161, 1029, 1070, 9298, 9115, 5845, 4832, 6189, 2598, 8520, 2299, 3205, 3393, 3006, 178, 3190, 6567, 5374, 9434, 7069, 8905, 1967, 8301, 6108, 3514, 7709, 4679, 172, 993, 7067, 9180, 950, 9898, 1995, 6704, 5321, 8645, 7095, 9549, 4040, 3046, 2060, 2977, 5833, 5923, 5274, 477, 5894, 9017, 6805, 1607, 3216, 9720, 6311, 1657, 7703, 7570, 732, 7135, 8115, 8896, 1012, 4701, 3743, 4733, 1092, 8791, 280, 2281, 8693, 6200, 4770, 9239, 3092, 7467, 6835, 1679, 1552, 6469, 5030, 4877, 9264, 8041, 6506, 6992, 3258, 5154, 8593, 9884, 6189, 8141, 6737, 8920, 648, 1484, 1766, 97, 2208, 5908, 7182, 3413, 6062, 9039, 5579, 137, 3599, 8603, 485, 9892, 1538, 1306, 3702, 5345, 2878, 7760, 1948, 8433, 8793, 3272, 4986, 4295, 3666, 7823, 6167, 6362, 7544, 9831, 4141, 518, 2224, 9414, 5371, 4283, 5043, 1268, 1204, 8765, 9085, 97, 8814, 9730, 2848, 4188, 84, 2967, 7791, 9597, 4981, 12, 243, 4140, 3986, 4003, 3209, 2743, 7859, 5925, 9602, 7857, 3011, 7805, 8546, 3741, 3264, 3610, 1010, 9191, 8188, 7698, 1743, 8075, 3535, 506, 2552, 5660, 9506, 9182, 6483, 5103, 1429, 8800, 7768, 8077, 7674, 8608, 7749, 9524, 2311, 1897, 4008, 8551, 7689, 2020, 9976, 1930, 7276, 995, 4605, 5414, 9411, 9528, 611, 9227, 9222, 7722, 6636, 9305, 5247, 247, 1867, 214, 8636, 6445, 6345, 7179, 5505, 1791, 8419, 3015, 8979, 5030, 5514, 5466, 3917, 2973, 5954, 4779, 9647, 9477, 8643, 3331, 5850, 7583, 907, 3328, 709, 6484, 6875, 3715, 587, 6992, 2101, 1890, 2523, 867, 1925, 6743, 183, 3679, 2069, 110, 3269, 461, 8358, 9739, 8897, 4792, 5870, 6306, 9033, 1759, 389, 6589, 6303, 4967, 2759, 9434, 4171, 7864, 7781, 3194, 4247, 4315, 8755, 9428, 17, 3986, 4427, 3727, 1628, 6320, 1785, 9083, 687, 3453, 4782, 6649, 5876, 7331, 9726, 5806, 1930, 5668, 6913, 3525, 7220, 4385, 869, 6986, 7688, 1428, 2202, 7487, 7233, 5495, 8581, 6170, 5214, 4155, 8558, 9589, 9680, 5971, 3378, 5902, 4848, 1046, 3201, 7284, 1542, 9472, 8993, 2576, 4147, 5313, 2569, 9801, 312, 8348, 4663, 8287, 2285, 2218, 4971, 5249, 8219, 3621, 9849, 3335, 6210, 4237, 9579, 9881, 2180, 9702, 1661, 4837, 1832, 552, 463, 8701, 5144, 9646, 7079, 1815, 7683, 5944, 3612, 6555, 1084, 1753, 9388, 2393, 6729, 5513, 1383, 608, 8421, 1651, 3121, 3800, 6190, 2888, 532, 2985, 6391, 3323, 3068, 4578, 5031, 3300, 9401, 2003, 5145, 9469, 9712, 227, 6746, 712, 2490, 682, 9103, 550, 916, 9384, 9724, 2529, 670, 3597, 8813, 819, 1964, 6958, 7489, 2701, 3912, 5447, 794, 6017, 3773, 2291, 1982, 6313, 6686, 134, 697, 558, 3309, 7940, 9561, 8705, 7540, 1687, 4832, 1957, 1360, 8940, 3302, 7122, 5744, 550, 9525, 5204, 4875, 1610, 1547, 3435, 2311, 4818, 1035, 5081, 4403, 7643, 8076, 8423, 9390, 6566, 6344, 1743, 9085, 6746, 9167, 6771, 9097, 3248, 4578, 3989, 5710, 6166, 6280, 7917, 8638, 7997, 7404, 3719, 124, 8603, 1932, 2402, 6114, 4122, 444, 1042, 6987, 2855, 8593, 7550, 6681, 996, 4647, 2, 7824, 3430, 5452, 879, 8713, 4071, 2498, 9670, 4960, 9141, 7457, 4961, 5447, 1905, 1266, 3530, 5169, 2978, 3029, 4930, 7735, 9648, 5644, 7468, 3143, 601, 990, 9311, 3071, 2158, 6613, 8007, 4615, 2807, 336, 9476, 4004, 6411, 5618, 2713, 3062, 9817, 3073, 2158, 3867, 2851, 1176, 1855, 6025, 7613, 3941, 620, 984, 8418, 9963, 871, 7029, 879, 8225, 2344, 9233, 8183, 3602, 6492, 4080, 8301, 8908, 8850, 2507, 8605, 7969, 2205, 1742, 7859, 9512, 7797, 6586, 2642, 5644, 1605, 7300, 8286, 7772, 7662, 8356, 802, 1146, 4243, 7368, 5996, 3004, 7403, 9374, 9340, 510, 7539, 8029, 3672, 8078, 3305, 4973, 811, 7391, 9154, 9850, 6738, 1511, 277, 2533, 4813, 4224, 269, 4051, 4948, 8314, 7530, 9244, 3471, 3496, 4865, 4541, 9805, 7119, 5432, 3207, 8462, 2474, 2939, 7501, 7321, 7784, 8842, 2826, 8183, 8540, 5576, 1305, 4118, 2092, 3997, 2363, 3079, 9092, 3205, 6485, 1455, 9120, 3568, 1887, 8666, 2117, 7360, 3750, 4788, 3176, 9165, 8650, 526, 3669, 3108, 9009, 7743, 8474, 2980, 6514, 720, 9625, 32, 8875, 6959, 9226, 8656, 3420, 8925, 1894, 6911, 8522, 3520, 8765, 2510, 9501, 754, 8641, 8736, 1378, 160, 1865, 7900, 2777, 7851, 6239, 655, 5431, 314, 1570, 4871, 8566, 7431, 6949, 4073, 5825, 1005, 414, 2891, 9097, 8097, 3128, 6570, 8066, 1350, 5281, 2310, 2822, 2327, 5421, 2337, 2929, 3713, 1857, 644, 3667, 1109, 2808, 2042, 3793, 1611, 162, 4243, 3365, 3034, 7824, 547, 3673, 4609, 1177, 2320, 7744, 690, 3625, 9655, 1614, 9969, 9837, 9143, 3066, 2841, 3335, 3732, 5283, 4887, 2400, 1366, 6680, 6365, 3729, 295, 5583, 992, 4905, 889, 3119, 3131, 571, 8894, 7845, 1674, 9452, 1214, 4963, 5280, 3321, 3284, 5804, 5585, 5167, 6785, 2794, 7352, 8625, 6504, 8217, 2211, 5590, 4496, 5273, 5458, 4393, 6598, 655, 7003, 199, 1944, 7844, 1097, 4516, 5962, 7109, 5256, 614, 6405, 2993, 9083, 7960, 323, 9519, 8519, 9065, 3829, 4181, 1301, 347, 3485, 5506, 6292, 8500, 4980, 6821, 6484, 5232, 7109, 723, 2140, 1645, 3456, 565, 8196, 8733, 6632, 7799, 9788, 1128, 1606, 9131, 1060, 1703, 4627, 2932, 6546, 2858, 2034, 8891, 5007, 7155, 6660, 4078, 1258, 5097, 1697, 6892, 1827, 598, 6518, 8218, 5409, 8777, 4353, 9009, 6221, 8437, 4023, 4013, 405, 2720, 7071, 1279, 4586, 133, 6693, 6844, 8306, 4707, 9016, 4797, 2822, 1995, 1707, 4509, 3765, 4933, 8920, 7134, 8704, 6940, 4008, 8340, 5932, 7582, 8220, 6408, 9827, 4349, 9928, 1638, 787, 9312, 4898, 4399, 2509, 7090, 1399, 3976, 7367, 4770, 8983, 5497, 4603, 5138, 6628, 4576, 1798, 4329, 9655, 6123, 9290, 2561, 8875, 689, 2732, 9785, 1920, 2042, 3158, 1443, 7097, 2498, 7414, 9511, 3246, 1146, 9485, 9247, 6267, 1575, 8834, 8441, 5743, 225, 9389, 8152, 3790, 342, 5756, 3491, 3952, 7988, 8897, 3685, 9136, 2482, 5457, 987, 6637, 8744, 6854, 3657, 5020, 4162, 8415, 1462, 8180, 7425, 7787, 9243, 3360, 2810, 6977, 1031, 6881, 2213, 6924, 9982, 4138, 4127, 8967, 6709, 6898, 9400, 9813, 3896, 4661, 3878, 7851, 2309, 1972, 7537, 9460, 1086, 6336, 9284, 9804, 5787, 1603, 7410, 8070, 1926, 5431, 8095, 2183, 7965, 1452, 6771, 6840, 6115, 1639, 2667, 3703, 319, 2381, 7880, 5782, 6091, 5292, 189, 315, 214, 8259, 5365, 7615, 3267, 6997, 2490, 3023, 3496, 2635, 1359, 8766, 2288, 5582, 5176, 3393, 9673, 2992, 7709, 625, 1879, 9972, 7323, 397, 9871, 5634, 6674, 885, 6413, 1893, 1480, 4816, 782, 2764, 6692, 7543, 6583, 8828, 2100, 3544, 5484, 1948, 1624, 6260, 7465, 2551, 9732, 7120, 7261, 7006, 2898, 5608, 1834, 7044, 5278, 4136, 3863, 7328, 1368, 1393, 2238, 1134, 3605, 5722, 9758, 3278, 3583, 6636, 7738, 1796, 2208, 517, 3735, 2422, 1883, 9862, 9858, 2321, 4707, 8629, 6920, 2037, 9954, 1468, 2989, 3908, 5348, 5704, 9862, 1991, 3641, 4731, 1582, 3945, 3830, 746, 2421, 6282, 68, 5023, 300, 4461, 288, 712, 9274, 4890, 3370, 3014, 3258, 6861, 2470, 2639, 8107, 37, 9982, 8317, 607, 8134, 9949, 1805, 6284, 7047, 5221, 6785, 7102, 2501, 9642, 6318, 7331, 6686, 1910, 1423, 397, 2807, 1235, 9984, 4660, 3319, 5252, 3203, 5905, 9577, 4892, 3615, 8420, 2654, 8452, 2492, 2720, 2121, 8234, 9528, 3993, 8577, 5357, 8101, 9757, 1442, 3634, 8440, 6568, 6604, 4802, 4620, 8862, 2387, 4489, 9437, 6725, 9405, 3609, 6590, 3304, 8311, 6517, 7619, 5221, 5057, 5638, 5911, 7888, 5037, 858, 2456, 6398, 1524, 8367, 7350, 7595, 9825, 205, 8808, 5876, 3267, 553, 3190, 8222, 7071, 1123, 3600, 4141, 4989, 6089, 6389, 8782, 8038, 6465, 9981, 5869, 8476, 1347, 4080, 9103, 7298, 2093, 7101, 7194, 7680, 5086, 9204, 3016, 3856, 5931, 2092, 3896, 564, 3484, 5550, 4909, 9790, 5360, 7175, 1453, 4149, 1221, 2554, 8787, 7015, 6801, 588, 1277, 2769, 9884, 3111, 6750, 537, 8035, 9879, 5933, 1637, 6567, 7472, 7157, 7313, 8892, 1718, 355, 9997, 6650, 5283, 363, 9037, 784, 8564, 740, 5143, 5292, 1452, 8807, 8744, 8292, 3505, 1491, 7952, 6320, 1690, 9884, 4305, 3661, 4439, 3128, 8564, 4651, 7897, 6673, 5556, 1136, 2213, 3990, 5952, 8036, 869, 4409, 5101, 9075, 1559, 4786, 3794, 254, 6284, 1978, 8747, 1546, 2890, 9473, 455, 5743, 5211, 3162, 8554, 8794, 4764, 9129, 4284, 8443, 7855, 9148, 4663, 7688, 3833, 9359, 9948, 3224, 3764, 3030, 6895, 761, 5534, 7879, 3591, 6203, 5593, 4781, 3871, 275, 1177, 8327, 4744, 5657, 2537, 1718, 6085, 4698, 3526, 5122, 7581, 1830, 8418, 5622, 4572, 7027, 5122, 8320, 2194, 6376, 9153, 7218, 1634, 5907, 8571, 372, 9829, 8804, 6354, 2895, 8053, 6959, 5613, 6531, 722, 5294, 580, 994, 5760, 6733, 9989, 5715, 2759, 3404, 178, 1056, 434, 2465, 7745, 9608, 4833, 2819, 3819, 9486, 4583, 6144, 3661, 6183, 4908, 5768, 3898, 3040, 8059, 895, 966, 8743, 2165, 5535, 1165, 6541, 157, 9652, 7754, 3914, 6507, 3518, 2560, 1801, 1641, 9202, 3957, 3239, 6664, 2266, 6018, 9656, 4860, 3552, 2980, 6483, 7820, 7319, 7198, 6193, 8355, 7314, 4373, 4865, 146, 8395, 9186, 4199, 7499, 2222, 5828, 8777, 7943, 7787, 9835, 7617, 5538, 215, 2478, 8654, 6874, 5803, 7894, 5762, 2979, 6788, 8753, 2661, 581, 561, 9424, 3153, 1372, 7129, 4857, 6484, 5048, 5010, 5861, 2657, 1947, 8283, 6307, 8175, 798, 1363, 7812, 4600, 5979, 7279, 9389, 667, 1972, 5512, 5528, 3435, 6027, 1131, 8803, 8462, 7800, 1383, 1951, 4559, 5975, 9346, 1106, 2189, 1271, 1941, 501, 6282, 1676, 9915, 8359, 8668, 9101, 2790, 9769, 4463, 8070, 7498, 9072, 8256, 2840, 6128, 7783, 9972, 3124, 5493, 8714, 3295, 8308, 6456, 8619, 6430, 5890, 9807, 9824, 9790, 6207, 5698, 2067, 8818, 3965, 7919, 1905, 1168, 6165, 1173, 4572, 1557, 6227, 7097, 5737, 2973, 933, 7716, 3603, 811, 8095, 1570, 422, 6311, 6009, 9380, 1844, 9675, 7023, 8815, 3044, 5862, 7856, 2651, 5582, 2889, 1585, 2070, 9920, 8988, 8183, 9822, 6732, 4778, 3040, 5962, 6839, 7264, 2539, 7362, 4540, 2466, 2155, 4178, 5639, 4263, 6984, 8988, 4635, 4344, 8125, 8034, 1005, 9925, 2779, 3472, 406, 2320, 1733, 5840, 6788, 2639, 722, 6899, 3897, 9294, 943, 8943, 4955, 2843, 2090, 4924, 9843, 2841, 8408, 2086, 5342, 2397, 1759, 3102, 2191, 5460, 1821, 5609, 2763, 8011, 399, 9455, 4939, 9509, 4395, 5389, 1325, 8745, 8183, 2612, 6196, 5378, 9903, 3192, 8420, 9581, 6355, 1537, 3382, 4094, 7046, 8957, 1242, 6555, 4240, 7468, 3440, 5679, 2237, 6947, 9838, 2137, 9021, 298, 2941, 1882, 8626, 6366, 8316, 9099, 644, 3711, 4716, 3845, 1312, 8419, 178, 7894, 4837, 4337, 7704, 6147, 5846, 7367, 3835, 7136, 4987, 1205, 4862, 6746, 3807, 3120, 8758, 4094, 2739, 4512, 2909, 4335, 2618, 7986, 2976, 5475, 7979, 7542, 8353, 5511, 1587, 1330, 9557, 3095, 6192, 8029, 3334, 8647, 8806, 6565, 3138, 4493, 350, 5770, 4410, 2499, 3810, 5104, 8036, 8362, 8611, 129, 1066, 1426, 5987, 553, 7801, 611, 7035, 5768, 8723, 8856, 9350, 7060, 9693, 7039, 9380, 9252, 3042, 4826, 8360, 3174, 7758, 1056, 1627, 4841, 8211, 6588, 8567, 9828, 7799, 1389, 5676, 318, 3524, 565, 5710, 963, 1959, 3915, 9205, 9701, 9906, 5641, 8683, 3913, 9531, 110, 1778, 662, 2682, 5292, 7708, 8490, 7983, 3035, 7521, 6164, 377, 7189, 5900, 2555, 208, 904, 5150, 7237, 7708, 6167, 9178, 9361, 123, 6585, 8071, 2366, 8287, 3080, 1938, 9057, 5086, 2660, 7001, 4003, 6209, 3566, 9584, 9793, 2229, 3693, 2256, 970, 6957, 5452, 8275, 2485, 3485, 4986, 602, 4376, 1217, 72, 2615, 2402, 4900, 3439, 419, 4834, 5209, 1816, 7641, 5933, 8534, 5585, 9993, 9404, 2532, 5087, 966, 3099, 5856, 2534, 7720, 3868, 9565, 2323, 6443, 882, 6992, 803, 9438, 4246, 9667, 8185, 9334, 9158, 9490, 7436, 1400, 7921, 401, 8870, 9186, 6188, 6707, 4534, 3954, 7696, 6948, 2127, 4749, 3881, 673, 5671, 5162, 7720, 2939, 9753, 2213, 7411, 5608, 4259, 8269, 912, 1154, 2601, 9045, 5549, 9526, 1040, 5734, 4027, 4549, 2948, 4828, 5422, 2422, 4466, 4021, 991, 7394, 5038, 8278, 9482, 7191, 4415, 7653, 3888, 4294, 3534, 5007, 7782, 9046, 843, 8788, 2501, 7678, 2632, 5894, 2872, 126, 5803, 1038, 3761, 2807, 6528, 2791, 9107, 734, 1077, 6433, 1033, 2829, 4125, 3775, 5566, 2, 7598, 9305, 2436, 4063, 4707, 5259, 2061, 1704, 58, 5108, 405, 6568, 9158, 6504, 9990, 1580, 7710, 2223, 7569, 2166, 7453, 3780, 8124, 4795, 1808, 9830, 1711, 7398, 8523, 7594, 6998, 6067, 6180, 1847, 4338, 6004, 4230, 3704, 8872, 1936, 816, 9294, 4032, 5087, 3300, 1452, 4119, 799, 3592, 2185, 5405, 2306, 9320, 6817, 2584, 1918, 9746, 836, 7360, 1451, 2728, 2198, 7585, 2153, 3346, 7549, 1756, 7591, 4057, 4215, 3621, 9517, 8093, 657, 7638, 5971, 4464, 8496, 4555, 6648, 3705, 5308, 4901, 2380, 8147, 8448, 4327, 21, 8347, 44, 8572, 9278, 2725, 3203, 7791, 1332, 8071, 4253, 9361, 5736, 7660, 8390, 4678, 5391, 9314, 3517, 7576, 6565, 9517, 3078, 9331, 9989, 5906, 4057, 6263, 7475, 7948, 2417, 6634, 1346, 8811, 2653, 1379, 6430, 4592, 1954, 5360, 3044, 8019, 1479, 2785, 4661, 8893, 903, 5978, 2183, 4622, 9955, 5429, 4147, 72, 4014, 8078, 2472, 2081, 1311, 229, 183, 7094, 1394, 1375, 8821, 9971, 5447, 8278, 6156, 3259, 6818, 7812, 9098, 5606, 2953, 1500, 1584, 286, 9449, 9762, 6580, 1825, 2626, 4621, 7727, 5090, 3526, 5916, 3648, 1592, 6350, 9502, 5368, 3934, 1717, 7576, 1340, 1969, 5771, 5716, 8134, 7829, 7315, 7484, 8164, 4465, 4789, 8563, 5992, 2510, 8765, 7228, 1526, 5115, 4474, 1745, 6793, 3148, 2096, 9613, 2542, 6007, 2822, 6258, 3846, 5381, 2313, 6325, 1417, 3527, 7623, 9773, 1358, 6735, 629, 1095, 3172, 1666, 8922, 6789, 3629, 7613, 1777, 7402, 7325, 7789, 9067, 7839, 6959, 6277, 1755, 66, 8480, 8540, 1384, 7426, 4514, 6124, 6990, 7140, 9835, 7685, 9885, 9121, 883, 6503, 3497, 7701, 4522, 1532, 9320, 9106, 5183, 2732, 807, 3547, 6202, 5078, 8182, 2745, 1507, 3534, 8183, 954, 2200, 1321, 723, 1437, 5515, 802, 9205, 2775, 7314, 8889, 5724, 2945, 5782, 1855, 7981, 4151, 9444, 8092, 4528, 6842, 2351, 2585, 4894, 6287, 5228, 7222, 1289, 3215, 7748, 4373, 8420, 1285, 9973, 973, 5415, 5891, 4162, 5432, 1180, 5533, 5422, 5813, 4405, 1531, 6645, 3191, 8147, 2684, 2164, 3667, 6128, 2830, 3756, 5430, 9175, 9271, 7571, 2493, 1302, 3951, 4594, 8348, 7459, 1427, 4376, 5240, 6724, 2196, 2469, 1004, 6869, 9590, 8320, 1368, 8998, 6962, 2786, 9981, 7403, 5924, 105, 5586, 6474, 9229, 3942, 594, 5632, 1554, 6559, 9660, 477, 8763, 6830, 50, 5491, 9765, 5263, 826, 8235, 737, 4454, 3360, 4768, 1394, 9559, 5858, 6385, 2275, 2380, 6707, 8067, 7919, 7203, 8632, 6141, 151, 3917, 7502, 6891, 2784, 1344, 7026, 5292, 3426, 5174, 5367, 4836, 5962, 5980, 1044, 4426, 1672, 3780, 2131, 2171, 7346, 2243, 9732, 8533, 751, 5412, 4040, 9197, 2317, 9251, 5334, 1594, 7260, 5906, 4345, 2295, 4449, 2375, 5375, 2005, 1636, 6828, 4044, 9158, 2962, 5502, 4917, 8132, 971, 543, 5670, 6968, 3877, 2149, 4284, 3507, 951, 4008, 8604, 5544, 5631, 6999, 906, 2432, 2205, 7092, 7443, 8517, 2006, 2659, 308, 1879, 241, 1023, 6016, 7626, 8141, 9302, 29, 8358, 9530, 1448, 7767, 8326, 9755, 4011, 9980, 9801, 5658, 6282, 8287, 4756, 9940, 5217, 4966, 2639, 3065, 8451, 8220, 8419, 5117, 6821, 8639, 8002, 6730, 6944, 8915, 4175, 3500, 210, 8877, 5522, 8995, 318, 7384, 7733, 7205, 1063, 9668, 9977, 89, 1449, 2498, 4002, 2572, 3713, 6953, 3031, 2416, 751, 5748, 1331, 4873, 11, 2834, 1815, 7118, 4046, 933, 5941, 9182, 2052, 9331, 9078, 9736, 4785, 8536, 966, 7121, 2889, 1170, 1827, 9154, 1717, 7508, 6401, 2120, 629, 4788, 6632, 6291, 2233, 3804, 5604, 2695, 9463, 1116, 2437, 1069, 3705, 5430, 9485, 2643, 2059, 2561, 1316, 7560, 9601, 8616, 5159, 8465, 2175, 7704, 6117, 887, 1519, 4501, 289, 2247, 2063, 8757, 9971, 6592, 7504, 883, 9783, 232, 1144, 8718, 9868, 920, 6785, 2391, 2117, 1291, 7144, 7079, 604, 2947, 6783, 6982, 3802, 340, 2379, 5301, 4049, 5623, 7718, 7285, 2626, 1961, 6094, 5902, 7431, 2585, 7460, 3561, 906, 7389, 879, 646, 1132, 6606, 6678, 4583, 4831, 1047, 9081, 83, 1340, 810, 7065, 8228, 623, 9819, 1836, 9881, 757, 8851, 6746, 7013, 3301, 3934, 8690, 1134, 9252, 3789, 6086, 6175, 6815, 5093, 3882, 7990, 2757, 7727, 5865, 3527, 3947, 2982, 5712, 7815, 6182, 2380, 9729, 7857, 9668, 2469, 5010, 5029, 2676, 4921, 9739, 9300, 3081, 3366, 652, 6837, 1083, 8269, 164, 2068, 2101, 3153, 4059, 7629, 3064, 1243, 2425, 5733, 5879, 2616, 6876, 6018, 2681, 9481, 8311, 7774, 9131, 7537, 2205, 4280, 5435, 3867, 5562, 3730, 974, 4226, 4106, 1604, 2586, 9527, 7088, 8488, 2093, 3071, 9025, 396, 6996, 1570, 9062, 6979, 8709, 4317, 5406, 1428, 1526, 4721, 6313, 4201, 9571, 3538, 1294, 3810, 9148, 184, 9910, 112, 724, 3153, 6286, 2618, 1779, 5133, 8169, 8171, 6709, 2881, 9724, 9617, 8073, 7141, 9969, 9840, 6612, 134, 4340, 6237, 11, 5988, 7833, 4868, 3516, 9749, 4660, 7635, 2854, 4465, 4639, 4524, 8124, 787, 9752, 1351, 9669, 7742, 2592, 925, 7103, 2310, 5261, 958, 2216, 8147, 6153, 9644, 2596, 754, 8128, 8702, 9114, 883, 8070, 2238, 9415, 9276, 8287, 3339, 3785, 5604, 7333, 5640, 6372, 3833, 8646, 7755, 4929, 5803, 1444, 7039, 7658, 798, 1363, 8082, 6400, 3132, 3405, 5176, 2837, 8449, 4369, 6310, 6914, 2493, 5664, 3624, 6162, 7638, 2560, 3035, 5125, 883, 4889, 2211, 4110, 7138, 2378, 2263, 9926, 8307, 5140, 1904, 4743, 298, 1774, 6062, 6849, 6545, 2880, 659, 3416, 9859, 6440, 2821, 5732, 7427, 4328, 3536, 3359, 9699, 7621, 7778, 4267, 829, 1530, 2942, 3562, 302, 2083, 2602, 100, 8261, 1843, 5312, 4, 6729, 4478, 9120, 7355, 3808, 6943, 701, 2700, 4281, 1636, 6092, 5198, 6499, 7165, 1688, 5470, 2243, 4656, 1713, 3066, 9874, 2456, 2839, 8902, 6541, 3281, 5188, 8283, 4676, 750, 1120, 5651, 2859, 52, 1978, 2415, 7819, 3180, 1814, 6369, 7058, 5636, 9641, 6914, 287, 8079, 3807, 7853, 1367, 8224, 1574, 4274, 7395, 5171, 1008, 2036, 7504, 4709, 5397, 9403, 7981, 7223, 159, 5795, 9280, 6079, 4396, 3451, 8562, 4678, 3775, 1111, 494, 7067, 8526, 2031, 9734, 2254, 9030, 1918, 9710, 6774, 5603, 1587, 6399, 7132, 3673, 6435, 2197, 2398, 6574, 6645, 7490, 5453, 2381, 4517, 4921, 1503, 2996, 3505, 483, 829, 7302, 3215, 573, 406, 3803, 1925, 5816, 9531, 4011, 8112, 9880, 321, 8135, 7774, 5302, 8194, 544, 5155, 8750, 1548, 381, 6632, 6354, 3120, 106, 2407, 8357, 6100, 4804, 817, 9744, 8626, 1949, 4616, 6176, 5751, 3998, 5589, 8758, 6548, 5664, 5747, 8502, 2929, 8850, 1554, 472, 3493, 9415, 1349, 7611, 2687, 7653, 9012, 4365, 4256, 8630, 5899, 3684, 7358, 7914, 9929, 2072, 4899, 8324, 2530, 6118, 972, 6153, 1710, 847, 2779, 8996, 3751, 4566, 6806, 4037, 4831, 1190, 4997, 8941, 1096, 5658, 3495, 9043, 506, 9043, 6286, 9922, 784, 3894, 1886, 361, 91, 6683, 6322, 6329, 3246, 9551, 6968, 6539, 1808, 595, 4896, 7608, 3277, 5178, 2272, 8094, 9237, 8191, 2291, 8306, 588, 7197, 7189, 1912, 2664, 5669, 4297, 7773, 8375, 7771, 7779, 590, 9654, 4361, 6575, 3646, 9946, 203, 3800, 7428, 9547, 7650, 6657, 1722, 4996, 1665, 6128, 1327, 1429, 6403, 7870, 7894, 1201, 9187, 9400, 9429, 1392, 7522, 7601, 7239, 4062, 516, 958, 8571, 4538, 7107, 8040, 5122, 8600, 6315, 6814, 9796, 8128, 1868, 3344, 3644, 1500, 8780, 2645, 2344, 5342, 8562, 2134, 2410, 5128, 4348, 6512, 9273, 5314, 5402, 8134, 657, 5463, 416, 7581, 911, 280, 2504, 3503, 133, 6247, 494, 5705, 5820, 2238, 6162, 7100, 5021, 1302, 1834, 4527, 7943, 1760, 6253, 283, 4333, 6720, 1465, 9214, 2533, 8188, 5661, 1145, 8921, 3073, 1024, 4546, 5146, 959, 1816, 2371, 4856, 7768, 4164, 8921, 27, 8213, 4947, 8085, 7646, 5617, 395, 6846, 1646, 9163, 483, 9246, 2623, 1049, 8808, 7937, 4631, 7504, 5196, 3657, 945, 6701, 2642, 8028, 3580, 9695, 3076, 6756, 6986, 5994, 1021, 8222, 7265, 4021, 7055, 3788, 5389, 5805, 9967, 499, 156, 1856, 7796, 3694, 8288, 3795, 4523, 7417, 8769, 8829, 2102, 8054, 4729, 7289, 5368, 7276, 6422, 6696, 2347, 5874, 6475, 5037, 9642, 9497, 6495, 6799, 8583, 7536, 1548, 906, 3878, 653, 5329, 9806, 4704, 9547, 577, 5182, 1202, 3830, 8130, 1379, 7371, 8593, 2303, 7063, 8753, 6752, 3671, 6042, 5789, 7070, 7067, 3713, 8218, 9817, 1667, 866, 2890, 7633, 1386, 3928, 5953, 5548, 7454, 901, 8712, 1781, 9377, 1803, 9163, 7928, 9643, 5138, 9115, 3304, 309, 470, 5469, 9194, 4255, 966, 7914, 6759, 9675, 9190, 1581, 4814, 5023, 1006, 8, 3471, 6711, 9592, 2191, 561, 7298, 5190, 6219, 3165, 9056, 2793, 2856, 6160, 2074, 9323, 9879, 4205, 4074, 7095, 7229, 3337, 8670, 4475, 9234, 7741, 1130, 9421, 7475, 1336, 6707, 1923, 3057, 7323, 5396, 5273, 3120, 8954, 2685, 287, 1705, 626, 9951, 1321, 3944, 8749, 9073, 4973, 6062, 5631, 1918, 1448, 8272, 5981, 9269, 922, 1606, 1025, 5352, 4421, 6205, 2328, 7309, 1826, 7318, 4707, 5440, 3003, 9332, 8841, 2111, 1378, 6770, 5956, 6748, 3513, 1147, 8976, 9183, 1208, 6384, 6143, 5090, 7595, 7286, 4775, 4435, 2113, 3941, 3330, 7957, 3614, 4170, 7805, 7295, 73, 8597, 5977, 9323, 9263, 1036, 8350, 8552, 3710, 4967, 3747, 3577, 4091, 5826, 3495, 3028, 301, 6910, 5419, 5652, 1551, 7039, 342, 9784, 9602, 4767, 4800, 4801, 7880, 9898, 8167, 5272, 1242, 4272, 5133, 2725, 308, 7607, 8311, 9881, 6052, 4791, 4976, 6629, 622, 8235, 8580, 7729, 7914, 8774, 3413, 8934, 7733, 4492, 634, 6292, 7500, 5973, 5899, 7613, 1412, 7261, 374, 5736, 3509, 1863, 3901, 1359, 2826, 9765, 3030, 2097, 402, 4994, 1497, 6593, 2066, 6840, 4278, 4261, 7857, 7194, 4332, 8376, 4699, 620, 2851, 3464, 2127, 2213, 2355, 2712, 1409, 1716, 8379, 7007, 1960, 7960, 635, 2488, 5681, 9863, 5082, 736, 5658, 6168, 8769, 2860, 3896, 7881, 877, 2240, 1426, 1833, 993, 328, 3251, 7215, 2178, 4307, 9084, 385, 4681, 8355, 8639, 4782, 6229, 1470, 1253, 5125, 4982, 7616, 5785, 4411, 467, 2951, 507, 2730, 9461, 3333, 767, 3388, 6490, 3538, 3995, 8308, 5635, 9656, 2940, 9077, 8502, 6101, 6625, 7737, 3324, 540, 8015, 7531, 6292, 2484, 1963, 8589, 8750, 7191, 1107, 8755, 1313, 9141, 7686, 3910, 8391, 4063, 3879, 1907, 2507, 1068, 4686, 5497, 7441, 3511, 7799, 6015, 2399, 7902, 4128, 2651, 428, 6501, 2335, 2827, 1336, 6337, 8283, 5104, 2004, 4846, 5150, 6015, 421, 906, 8313, 3102, 2981, 9159, 2896, 4685, 594, 7885, 5738, 4314, 8158, 2421, 3314, 4299, 6477, 7039, 9881, 8489, 5850, 9101, 353, 9967, 4578, 8678, 8003, 9855, 8039, 7300, 2170, 8989, 2414, 7318, 3894, 4450, 4465, 207, 7291, 7818, 2239, 9925, 623, 998, 1031, 7651, 4399, 2779, 5792, 2087, 426, 9698, 1284, 2676, 8980, 5638, 7921, 8401, 1317, 2521, 2919, 169, 7000, 2831, 8764, 9994, 333, 2544, 3275, 4502, 6983, 9595, 1776, 8724, 366, 5966, 942, 5567, 7021, 2383, 4921, 1206, 2053, 5606, 1900, 3723, 5849, 1728, 2597, 7972, 1008, 5086, 2436, 2381, 471, 9300, 2912, 8212, 4732, 5834, 7489, 3308, 5780, 9310, 5735, 1355, 373, 9601, 3842, 1595, 4621, 8917, 7479, 5708, 8729, 7541, 7826] }
    ];
    for (const data of testData) {
        const ans = subarraysWithKDistinct(data.A, data.K);
        CheckAns(data, ans);
    }
}